Photoneo robotic API

The Photoneo robotic API is the main part of the Robot module. It is a set of procedures (programs) for communication with Bin Picking Studio (BPS) and Locator Studio (LS). The procedures are written in the native programming language(s) of each robot brand.

The Photoneo robotic API has these categories:

Connection procedures

These procedures open a connection between the robot controller and the vision controller. More exactly, they connect the Action Request Client on the robot controller to the Action Request Server on the vision controller.

Communication procedures

These procedures are used for direct communication between the robot controller and the vision controller. The communication consists of sending and receiving messages. Each message from the robot controller to the vision controller is followed by a message from the vision controller to the robot controller.

There are three types of communication procedures:

  • Synchronous action requests (request-sending and response-receiving procedures) A synchronous action request sends an action request and receives the response in a single call. The procedure blocks the main robot program until the response is received.

  • Asynchronous action requests (request-sending procedures)

    An asynchronous action request only sends an action request. It does not receive the response, so it does not block the main robot program.
    You must receive the response with the matching response-receiving procedure before you call any other communication procedure.
    Note: Requests are split into request-sending and response-receiving procedures when a synchronous request would block the robot program for a long time.
  • Response-receiving procedures These procedures receive the response to the last asynchronous action request.

Synchronous and asynchronous action requests are together called action requests.

Follow these rules when you use these procedures:

  • Do not send a new action request before you receive the response to the previous asynchronous action request. This breaks the required order of messages between the robot controller and the vision controller and causes an error. Each message sent from the robot controller must be followed by a message received from the vision controller.

  • Always use the matching response-receiving procedure after an asynchronous action request. The wrong procedure causes an error.

  • For BPS: after you receive a trajectory, do not send any action request until the trajectory is executed.

For detailed descriptions of the action requests and response-receiving procedures, see Action requests. For the error codes that an action request can return, see Error codes. The values returned in the responses (for example the gripping point ID, object dimensions or the number of localized objects) are described in Info data. The responses to some action requests can also include a neural network label for the localized object.

Bin picking procedures

Note: Only available for Bin Picking Studio.
These procedures execute bin picking. The robot operator must implement the gripper procedures. These procedures run automatically when the robot reaches a waypoint (for example, they activate the gripper at the Grasp waypoint). You must also adjust the motion parameters of the robot - speed and acceleration.

Auxiliary procedures

Some robot brands have additional procedures that make the setup of your application easier.